﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace GymMaster.View.Cadastro
{
    public partial class CadastroFornecedor : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            GymMasterEntities contexto = new GymMasterEntities();
            int valor;
            Int32.TryParse(ddlEstado.SelectedValue, out valor);
            if (valor > 0)
            {
                var dadosFornecedor = from cid in contexto.CIDADE
                                      where cid.COD_ESTADO == valor
                                      orderby cid.NOM_CIDADE
                                      select new { cid.COD_CIDADE, cid.NOM_CIDADE };

                ddlCidade.DataValueField = "COD_CIDADE";
                ddlCidade.DataTextField = "NOM_CIDADE";
                ddlCidade.DataSource = dadosFornecedor;
                ddlCidade.DataBind();
            }
            ddlCidade.Items.Insert(0, new ListItem("<< Selecione >>", "0"));
        }

        protected void rbtTipoFornecedor_onCheckedChanged(object sender, EventArgs e)
        {
            if (rbtJuridico.Checked)
            {
                lblIdentificacao.Text = "CNJP:";
                txtIdentificacao.MaxLength = 18;
            }
            else
            {
                lblIdentificacao.Text = "CPF:";
                txtIdentificacao.MaxLength = 14;
            }
            txtIdentificacao.Text = "";
        }

        protected void btnCadastrar_Click(object sender, EventArgs e)
        {
            GymMasterEntities entity = new GymMasterEntities();

            //endereco
            ENDERECO endereco = new ENDERECO();
            endereco.RUA = txtRua.Text;
            endereco.NUMERO = Int32.Parse(txtNumero.Text);
            endereco.BAIRRO = txtBairro.Text;
            endereco.COD_CIDADE = 2935; // Int32.Parse(ddlCidade.SelectedValue);
            endereco.CEP = txtCep.Text;
            endereco.COMPLEMENTO = txtComplemento.Text;
            endereco.ID_TIPO_ENDERECO = (from tipoend in entity.TIPO_ENDERECO
                                         where tipoend.DESCRICAO == "Residencial"
                                         select tipoend.ID_TIPO_ENDERECO).SingleOrDefault();
            entity.ENDERECO.AddObject(endereco);

            //fornecedor
            FORNECEDOR fornecedor = new FORNECEDOR();
            fornecedor.NOME = txtRazaoSocial.Text;
            fornecedor.FANTASIA = txtNomeFantasia.Text;
            fornecedor.SITE_WEB = txtSite.Text;
            fornecedor.EMAIL = txtEmail.Text;
            if (rbtFisico.Checked)
            {
                fornecedor.CNPJ = "";
                fornecedor.CPF = txtIdentificacao.Text;
            }
            else
            {
                fornecedor.CNPJ = txtIdentificacao.Text;
                fornecedor.CPF = "";
            }
            fornecedor.OBSERVACAO = txtObs.Value;
            fornecedor.ENDERECO = endereco;

            entity.AddToFORNECEDOR(fornecedor);

            //telefone
            TELEFONE telefoneCom = new TELEFONE();
            telefoneCom.FONE = txtTelComercial.Text;
            telefoneCom.ID_TIPO_TELEFONE = 1; //Comercial
            telefoneCom.ID_ORIGEM_TELEFONE = 1; //fornecedor
            entity.AddToTELEFONE(telefoneCom);

            TELEFONE telefoneCont = new TELEFONE();
            telefoneCont.FONE = txtTelContato.Text;
            telefoneCont.ID_TIPO_TELEFONE = 2; //Contato
            telefoneCont.ID_ORIGEM_TELEFONE = 1; //fornecedor
            entity.AddToTELEFONE(telefoneCont);

            entity.SaveChanges();
        }


    }
}